package com.yun.algorithmproblem.leetcode;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Leetcode2732 {

    public static void main(String[] args) {

    }

    public List<Integer> goodSubsetofBinaryMatrix(int[][] grid) {
        HashMap<Integer,Integer> map=new HashMap<>();
        for (int i = 0; i < grid.length; i++) {
            int mask=0;
            for (int j = 0; j < grid[i].length; j++) {
                mask |= grid[i][j] << j;
            }
            if(mask==0){
                return List.of(i);
            }
            map.put(mask,i);
        }

        for (Map.Entry<Integer, Integer> e1 : map.entrySet()) {
            for (Map.Entry<Integer, Integer> e2 : map.entrySet()) {
                if((e1.getKey()&e2.getKey())==0){
                    int i=e1.getValue();
                    int j=e2.getValue();
                    return i<j?List.of(i,j):List.of(j,i);
                }
            }
        }
        return List.of();
    }
}
